import torch

def inspect_pt_file(file_path):
    """
    加载并查看 .pt 文件的内容。

    :param file_path: .pt 文件的路径
    """
    try:
        # 加载 .pt 文件
        data = torch.load(file_path, map_location='cpu')

        print(f"文件路径: {file_path}")
        print(f"文件类型: {type(data)}")

        # 如果是字典类型，打印键值对
        if isinstance(data, dict):
            print("文件内容是字典类型，包含以下键值对:")
            for key, value in data.items():
                print(f"  {key}: {type(value)}")
                if isinstance(value, (torch.Tensor, list, dict)):
                    print(f"    数据内容示例: {str(value)[:200]}")  # 仅打印部分内容
        elif isinstance(data, torch.Tensor):
            print("文件内容是一个 Tensor:")
            print(data)
        else:
            print("文件内容:")
            print(data)

    except Exception as e:
        print(f"加载文件时出错: {e}")


if __name__ == "__main__":
    # 替换为你自己的 .pt 文件路径
    pt_file_path = "/Users/songyutong/NewTechnology/new-technology/data/data.pt"
    inspect_pt_file(pt_file_path)
